查看原文
其他

开源框架 ModelScope-Agent 加速多智能体应用构建

李晨亮 DataFunSummit
2024-09-11

导读 今天分享的主题是“ModelScope-Agent”。ModelScope-Agent 是基于魔搭社区上多种模态大模型所打造的一个开源多模态多智能体系统。魔搭社区集模型、数据集及 Demo 于一体,涵盖了目前基本上所有与大模型相关的工作。值得一提的是,在日前的世界人工智能大会上,魔搭社区荣获了 SAIL 之星奖,彰显了业界的广泛认可。

本次分享将围绕三大板块展开:首先,简要回顾Agent 的基本概念;接着,介绍ModelScope-Agent 开源框架;最后,展示在魔搭社区中,基于 ModelScope-Agent 框架开发的多个有趣的应用。主要内容包括以下几个部分:

1. 框架介绍

2. ModelScope-Agent 开源框架

3. ModelScope-Agent Apps

4. 问答环节

分享嘉宾|李晨亮 阿里通义实验室 算法专家

编辑整理|王甲君

内容校对|李瑶

出品社区|DataFun


01

框架介绍

Agent 的概念由来已久,最早在强化学习期间就存在智能体。DeepMind 和 OpenAI 在这方面做了很多工作,如星际争霸和阿尔法狗,都是基于 RL(强化学习)。但 RL 有局限性,需要针对特定环境学习,通用性不强。

去年,ChatGPT 和大模型的快速发展引起了对智能体的广泛关注。将大模型赋予智能体后,Agent 能实现许多之前无法完成的应用。大模型智能体比传统智能体更有前途,主要因为其拥有海量知识,不需针对特定环境优化;强大的指令跟随能力、工具调用能力(如代码生成和信息检索)也提升了其可行性和应用性。

什么是智能体?按照现在大家比较认可的一些定义来看,智能体需具备以下几个能力:一是对外界环境的感知能力,无论是文本、多模态、具身或 3D;二是能够在感知环境状态后进行规划(Planning)和记忆(Memory),像人类一样思考;三是能基于当前环境和智能体的思考做出有效决策。上图是现在比较公认的一个类似于人的智能体结构。

智能体中一个关键问题是工具调用。工具调用分为两类:一类是偏向工具的调用,如信息检索和外部工具;另一类是直接调用模型,如生成图片和执行多模态任务,包括理解和生成,这需要调用许多 AI 模型。

02

ModelScope-Agent 开源框架

ModelScope-Agent 是魔搭社区开发的开源框架,适用于单智能体和多智能体的应用。ModelScope-Agent 有如下特点:
  • 它是一个可定制且功能全面的框架,提供数据集收集、工具检索与注册、存储处理、定制模型训练和应用开发等功能,可以快速应用于实际场景。
  • 以开源的 LLM 为核心组件,支持阿里的通义千问以及国内外常用的文本或多模态大模型。
  • 支持多样化且全面的 API 开发。后续会介绍一些针对魔搭开发的有趣应用。

魔搭 ModelScope-Agent 框架的工作原理是基于开源的 LLM 进行规划调度,调用对应的 API。ModelScope-Agent 能执行 API,并将结果返回给 LLM,最后由 LLM 做出回复。比如在魔搭 GPT 上的一个案例:写一个简短的故事并用女声朗读。首先用工具检索与语音相关的 TTS(从文本到语音)工具,再用 LLM 生成故事,最后用 TTS 进行朗读。

下面具体介绍每一块的工作。第一步是魔搭 ModelScope-Agent 注册新工具。在实际应用中,我们需要许多工具,包括外部通用工具(如检索和代码工具)、自制工具和 AI 模型。我们提供了一个工具基类,只需配置工具的描述、参数和调用,即可完成新工具的注册。第二步是将新注册的工具集成到 Agent 中,使模型具备判断力,选择需要调用的具体工具。上图中右边展示了如何用代码形式完成整个注册工具流程。

魔搭开源 Agent 相关数据集有两个:一个是工具调用数据集 MSAgent-Bench,Bench 数据集偏向工具调用;另一个是多角色扮演数据集 MSAgent-MultiRole。后面会展示我们为聊天室配置的多智能体应用。若对这两个数据集感兴趣,可以在魔搭上下载。

03

ModelScope-Agent Apps

下面介绍基于 ModelScope-Agent 能做哪些应用。首先要介绍的是魔搭 GPT,它是基于 ModelScope 做大小模型协同的 Agent 系统,其中 LLM 作为规划中枢模型,可以调用多个小模型作为工具。其次,它能加速大模型的应用,自动构建大小模型协同链路,解决业务场景中的问题。基于阿里云的算力底座,大小模型协同的 Agent 系统能解决现实中许多场景的链路问题。

这是在魔搭 GPT 上展示的一个案例:生成一个 24 字的微信介绍,并用女生朗读。在单轮多 API 调用中,关键在于工具调用和 Query 问题拆解。调用的模型一种是基于 LLM 大模型进行文案创作;另外需调用语音生成 API,以及调用视频生成 API,这些模型都是魔搭相关模型。

接下来展示的是多轮多 API 调用的应用。以大模型为中枢,和用户多轮对话,涉及到创作生成和多个工具的调用能力。多轮调用的难点在于需要结合前一轮的历史记录。

以上就是我们基于 ModelScope-Agent 开发的第一个应用——魔搭 GPT,支持单轮或多轮多 API 调用。

魔搭 GPT 囊括了众多小模型,包括 NLP、语音、图像、多模态等能力。它整合了 10+ModelScope 模型,覆盖文本、语音、图像、多模态模型,支持 Pipeline 本地调用和本地部署模型,同时支持 ModelScope token 免费调用 API。

在 ModelScope 上搭建魔搭 GPT 非常简单。获取 ModelScope 代码并安装依赖,然后加载需要的文本模型,只需通过魔搭 clone LLM 即可;配置 config 文件,并设置 ModelScope 的 token 和 API 工具。

基于 ModelScope-Agent,就能快速搭建魔搭 GPT。魔搭 GPT 的优点是能利用魔搭社区里已有的模型能力,快速开发有趣的应用。魔搭社区涵盖了 AI 各方向模型,如语音、NLP、多模态、CV 等。

第二个工作是针对单智能体开发的 Story-Agent,用于交互式故事绘本创作。这款产品刚刚在世界人工智能大会上发布,它可为自闭症儿童构建故事绘本。该系统基于 ModelScope-Agent,通过配置不同的 Prompt,模型实现交互式创作,并复用已有的图片生成工具。在生成过程中,可以展示图片和故事应用的工具。

另一项工作是 Facechain-Agent,可以生成个性化证件照和图片。这个过程也可以通过交互式方式进行。例如,用户上传一张图片后,可以修改其风格,比如想要牛仔风,那么魔搭后端的 Facechain 模型就会进行个性化的 Lora 训练。还可以通过交互方式修改不同的个性化生成风格,比如将其转变为工作风。上图中展示了通过交互式方式进行个性化人脸写真训练和推理的方式。

多角色扮演 Multi Agent 聊天室是基于 ModelScope-Agent 的另一个应用。和文中介绍的其它应用一样,其 Demo 都已在魔搭社区上开放,大家可以去体验和试用。我们搭建的其中一个多角色扮演是被美女包围,其中的六个角色都配置到了不同的 Agent。此外,还配置了一个小米 SU7 的 Agent,大家也可以去试用。设置每个角色时,只需配置其角色 profile(如年龄信息、知识背景)。

基于这个智能体,我们还有一个通义星尘的产品,这是一个个性化角色扮演平台,用户可以自定义自己感兴趣的角色和个性化助理。

我们提到的 Multi Agent 框架实际上是基于最近的 α-UMi 协同框架。这是为了解决单智能体面临的问题,即当操作过于复杂或工具链过长时,模型的效果会受到影响。长序列问题无论对文本大模型还是多模态大模型来说,都是一个待解决的问题。因此,我们将其拆解为Multi Agent 框架,包含了 Planner、Caller 和 Summarizer 等部分。在使用过程中,可以对每一步进行任务拆解,这是 Multi Agent 的好处。与单智能体相比,无论效率还是效果,都能得到进一步提升。这个工作已开源,并在魔搭上提供了相关内容。

前文中提到的故事绘本不仅限于单张图片的生成,还包括故事绘本的视频生成。整体框架基于一个 LLM,先生成故事的大纲,再生成每一页的具体内容。完成后,每页内容会调用 StoryDiffusion,以确保图片的一致性,这是视频生成的关键。音效方面,使用 AudioLDM 生成对应的音效。

整个过程包括为每个片段生成故事,并通过 Filtering 和 Transform,使其与图片生成或 TTS 更加匹配。用户可以选择绘本或漫画的风格,针对不同年龄段(如 0-3 岁,3-6 岁或 6 岁以上)提供了不同风格的绘本,并支持自定义故事主题和人物角色 profile。该应用也已在魔搭上开源,如果感兴趣可以到魔搭上体验故事绘本视频的生成。

现在生成的效果分为两个版本,一个是偏故事绘本,另一个是偏漫画。大家可以到魔搭上亲身体验其出色的 TTS 效果,除了图片能随着镜头变化并保持一致性外,TTS 也是关键。

最后介绍一下整个 ModelScope-Agent 的规划。目前视频生成 Demo 和 ModelScope 开源项目,已在 Github 上开源。未来目标是打造最好用的开源文本、语音、视频合成的内容创作 Agent。依托通义千问大模型的文本创作,结合不同场景的智能体,提供了配音、背景音乐、音效等 API 工具,并且有大量文本到视频、图片到视频的应用。在此也希望更多开发者和使用者加入 ModelScope-Agent,探索更有趣的场景,激发更多创新应用。

今天的分享就到这里,谢谢大家。

04

问答环节

Q1:关于魔搭 GPT,针对一个任务或 query,有多个 API 需要协调,有时同步,有时异步。根据我的经验,依赖大模型进行工具调度决策可能不太可靠,对用户而言也很黑盒。可否介绍一下您们在优化这方面的工作,或未来展望,如让用户自定义配置工具调用逻辑,或在平台侧进行相关模型优化等。

A1:这是一个很好的问题,要分为几个方面。首先大模型的基础能力提升,您提到的不可控或效果问题,确实是大模型需要改进的地方,包括工具调用和作为 Agent 的能力。其次是可控性,目前通过人工交互的方式效果不错。实际应用中,业务方反馈需要多种人工交互方式,包括工程或规则层面,以及通过大模型判断在何种场景下需要与人工交互。

追 Q1:您刚说的最后一种,比如识别到一些具体场景,然后大模型和人再交互获取一些具体的信息吗?

追 A1:是的,大模型本身可以判断是否需要交互,或者以什么样的方式进行交互。

Q2:Agent 是今后发展的趋势,但是现在可能 Agent 开发还比较少,可能在各行业没那么普及。能说一下您的理解及原因吗?

A2:整体来说,Agent 发展很快。在 DataFun 的众多与 Agent 相关的主题,说明 Agent 已在各行各业中得到应用。与以往人为定义好的 Pipeline 不同,现在的大模型具备一定的规划、记忆和反思能力,能实现一些更加高级的应用。可以说 Agent 的潜力尚未完全开发,还有许多有趣的应用场景,比如手机操作智能体。

追 Q2:在 Agent 开发中包含一个类似决策模块,针对这个模块,我们是否有较大的改进计划或方向?

追 A2:决策只是单 Agent,提升 Agent 还包括多个方面。首先,基础模型的长指令跟随能力是关键,确保 Agent 能理解并执行复杂指令,从而改善决策和规划。其次是工具调用能力,这也与大模型的基础能力相关。模型需要丰富的知识储备和强大的长指令跟随能力,才能准确调用用户指定的工具和指令。虽然 GPT-4 已经取得显著进展,但其他模型仍需努力提升这些核心能力。

追 Q2:归根到底,涉及大模型的答案输出能力和任务分解能力。知识图谱通过提炼知识,既能使信息更精炼,也能提高准确性。在提升大模型准确率上,您们有没有结合知识图谱方面的工作,或分享一些心得?

追 A2:现在很多方案都基于知识图谱,比如 RAG 方案,本质上依赖于知识。此外,操作过程中需要的说明书(如 CoT 过程)本质上也属于知识。知识的问题仍绕不开 LLM 的基本能力,LLM 需要能够理解并基于这些知识进行推理和规划。这两者相辅相成。RAG 工作的目标是提供更准确或更简洁的知识,以便 LLM 更好地理解。从 LLM 的角度看,它应能够更好地理解和应用更多知识,二者并不矛盾。

我们团队没有做与 Graph(图谱)相关的工作,我们通过加入更多的图片信息以及更准确的指令提示来帮助实现目标。

Q3:通义模型后面用的是 ModelScope-Agent 的能力吗?开始讲到有一个开源数据集,与通义的 Agent 能力有关吗?

A3:这个问题有点混淆。通义对外的 API 是基础模型,而 ModelScope-Agent 是基于 LLM 开发 Agent,不是基于 Agent 开发 API。刚刚提到的数据集与通义的 Agent 能力有关系,开源数据集分成两块:一个是评测工具调用的,Agent 在有了 LLM 后,需要评测其能力并标记特定 Query 应调用的工具;另一个是多角色的角色扮演,评测在不同场景中的表现。两个数据集分别用于这两个场景,且在魔搭上开源了。

Q4:魔搭的 ModelScope-Agent 和最近流行的可视化工作流配置是否属于同类产品?可视化配置更容易上手,非开发人员用起来更简单。那么,魔搭的 ModelScope-Agent 优势是什么?还是说它们其实不是同一类型产品?

A4:魔搭整体定位不是一个产品,而是一个开源社区,提供整套的 Pipeline 和已发布的代码,大家可以基于这些进行二次开发和应用开发。①从定位看,魔搭的 ModelScope-Agent 不是产品或应用,而是围绕魔搭社区,致力于建立一个中文开源社区。②我们整体是基于开源框架,而不是可视化界面。我们内部讨论过这个问题,可能还是定位不同。基于 Flow 的工作流方式是提供更可用的工具,而魔搭是建立一个吸引更多开发者参与的开源社区。
以上就是本次分享的内容,谢谢大家。


分享嘉宾

INTRODUCTION


李晨亮

阿里通义实验室

算法专家

李晨亮,现为阿里巴巴通义实验室算法专家。2016 年本科毕业于西安电子科技大学,2019 年硕士毕业于北京邮电大学。主要研究方向为自然语言处理,包括预训练语言模型、文本生成、多模态等。曾经在相关领域顶级会议如 ACL、EMNLP、AAAI,ICML,CVPR 等发表 20 多篇生成,多模态,大模型,Agent 等相关领域论文,包括中文首个超大规模生成模型 PLUG,多模态 mPLUG 系列,中文 GPT 等系列生成模型。参与多个国际评测和比赛,在纯文本生成、多模态生成等相关评测榜单上多次达到第一,并在多模态 VQA 榜单上首次超越人类水平。魔搭社区 NLP 领域负责人,累计推动开源 400+ 模型,40+ 数据集,负责 ModelScopeGPT(魔搭 GPT)项目,打造大小模型协同的 agent 系统和基于开源大模型的 ModelScope-Agent 框架。作为核心成员参与通义星尘角色扮演的产品打造。


往期推荐


大模型与图机器学习协同的用户行为风控

从RAG到Agent,就是大模型的全部了?

加速云端机器学习-Alluxio 在小红书的实践

从 Bert 到 LLM:360 广告推荐业务中语言模型的应用探索

模型赋能下的数据安全合规管理

TCHouse-C 实时数据更新的技术选型与工程实践

LLM+RAG:大模型真实落地应用范式探索

音频表征大模型在音乐冷启的应用

大模型时代知识图谱赋能高血压智能诊疗实践

字节跳动系统智能运维实践 | DataFun大会分享回顾

点个在看你最好看

SPRING HAS ARRIVED

继续滑动看下一个
DataFunSummit
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存